package com.yanfan.iot.domain;

import com.yanfan.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;

/**
 * 产品固件对象 iot_firmware
 *
 * @author kerwincui
 * @date 2021-12-16
 */
@ApiModel(value = "Firmware", description = "产品固件对象 iot_firmware")
public class Firmware extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 固件ID
     */
    @ApiModelProperty("固件ID")
    private Long firmwareId;

    /**
     * 固件名称
     */
    @ApiModelProperty(value = "固件名称")
    private String firmwareName;

    /**
     * 产品ID
     */
    @ApiModelProperty(value = "产品ID")
    private Long productId;

    /**
     * 产品名称
     */
    @ApiModelProperty(value = "产品名称")
    private String productName;

    /**
     * 租户ID
     */
    @ApiModelProperty(value = "租户ID")
    private Long tenantId;

    /**
     * 租户名称
     */
    @ApiModelProperty(value = "租户名称")
    private String tenantName;

    /**
     * 是否系统通用（0-否，1-是）
     */
    @ApiModelProperty(value = "是否系统通用")
    private Integer isSys;

    /**
     * 是否最新版（0-否，1-是）
     */
    @ApiModelProperty(value = "是否系统通用")
    private Integer isLatest;

    /**
     * 固件版本
     */
    @ApiModelProperty(value = "固件版本")
    private BigDecimal version;

    /**
     * 文件路径
     */
    @ApiModelProperty(value = "文件路径")
    private String filePath;

    /*固件序列号*/
    @ApiModelProperty("固件序列号")
    private String seqNo;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    @ApiModelProperty("逻辑删除标志")
    private String delFlag;

    public String getSeqNo() {
        return seqNo;
    }

    public void setSeqNo(String seqNo) {
        this.seqNo = seqNo;
    }

    public Integer getIsLatest() {
        return isLatest;
    }

    public void setIsLatest(Integer isLatest) {
        this.isLatest = isLatest;
    }

    public Long getFirmwareId() {
        return firmwareId;
    }

    public void setFirmwareId(Long firmwareId) {
        this.firmwareId = firmwareId;
    }

    public String getFirmwareName() {
        return firmwareName;
    }

    public void setFirmwareName(String firmwareName) {
        this.firmwareName = firmwareName;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public Long getTenantId() {
        return tenantId;
    }

    public void setTenantId(Long tenantId) {
        this.tenantId = tenantId;
    }

    public String getTenantName() {
        return tenantName;
    }

    public void setTenantName(String tenantName) {
        this.tenantName = tenantName;
    }

    public Integer getIsSys() {
        return isSys;
    }

    public void setIsSys(Integer isSys) {
        this.isSys = isSys;
    }

    public BigDecimal getVersion() {
        return version;
    }

    public void setVersion(BigDecimal version) {
        this.version = version;
    }

    public String getFilePath() {
        return filePath;
    }

    public void setFilePath(String filePath) {
        this.filePath = filePath;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("firmwareId", getFirmwareId())
                .append("firmwareName", getFirmwareName())
                .append("productId", getProductId())
                .append("productName", getProductName())
                .append("tenantId", getTenantId())
                .append("tenantName", getTenantName())
                .append("isSys", getIsSys())
                .append("version", getVersion())
                .append("filePath", getFilePath())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
